# 导入redis模块
from redis import StrictRedis


class Config:
    # 调试模式
    DEBUG = True
    # 配置秘钥
    SECRET_KEY = 'AhXrQ3Bt1kH2A8CJaOVpUKStcOQBgSgz1uMAk7S2'

    # mysql配置信息
    SQLALCHEMY_DATABASE_URI = 'mysql://root:mysql@localhost/info18'
    # 动态追踪修改
    SQLALCHEMY_TRACK_MODIFICATIONS = False

    # 定义redis的主机和端口号
    REDIS_HOST = '127.0.0.1'
    REDIS_PORT = 6379
    # 实现状态保持，配置session信息存储在redis中
    SESSION_TYPE = 'redis'
    SESSION_REDIS = StrictRedis(host=REDIS_HOST, port=REDIS_PORT)
    # session使用签名,是为了让session编码更安全
    SESSION_USE_SINGER = True
    # session有效期设置，flask内置对的session有效期设置，permanent-永久的　
    PERMANENT_SESSION_LIFETIME = 86400

# 封装不同环境下的配置类，开发模式，生产模式
# 开发模式下开启DEBUG
class DevelopmentConfig(Config):
    DEBUG = True

# 生产模式下关闭DEBUG
class ProductionConfig(Config):
    DEBUG = False

# 定义一个字典，实现不同环境下的配置类映射
config_dict = {
    'development':DevelopmentConfig,
    'production':ProductionConfig
}